package com.hanamaki.unit.junit;

import com.hanamaki.unit.junit.util.JDBCUtil;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@RunWith(Parameterized.class)
// 指定运行器runner:使用参数化运行器来运行
public class ParameterTestMaxMin {

    static Calc calc;

    @BeforeClass
    public static void setUp() {
        calc = new Calc();
    }

    // 定义 需要的数据
    private int a; // 参数1
    private int b; // 参数2

    private String result; // 预期值

    // 构造器
    public ParameterTestMaxMin(String a, String b, String result) {
        this.a = Integer.parseInt(a);
        this.b = Integer.parseInt(b);
        this.result = result;
    }

    @Parameterized.Parameters
    // 构造参数  二维数组
    public static Object[][] parameter() {

//        return new Object[][]{
//                new Object[]{2, 3, false},
//                new Object[]{5, 6, true},
//                new Object[]{4, 3, true},
//                new Object[]{9, 31, false}
//        };

        return JDBCUtil.getSqlContent("maxmin");
    }

    @Test
    public void testAdd() {

        boolean b = calc.maxMin(this.a, this.b);
        System.out.println(b);
        // 添加 断言
        boolean flag = false;
        if (result.equals("true")) {
            flag = true;
        }
        Assert.assertEquals(flag, b);  // 使用 预期值和实际值比较

//        Assert.assertTrue(b);
    }


}
